import os
import sys
from pathlib import Path

# 添加项目根目录到Python路径
projectRoot = Path(__file__).parent.parent  # 项目根目录路径
sys.path.append(str(projectRoot))

from src.fileClassifier import FileClassifier

def testFileClassifier():
    """
    测试文件分类器功能
    """
    print("=== 文件分类器测试 ===\n")
    
    # 创建测试实例
    classifier = FileClassifier()  # 文件分类器实例
    
    print(f"数据文件夹路径: {classifier.dataPath}")
    
    # 检查数据文件夹是否存在
    if not os.path.exists(classifier.dataPath):
        print(f"错误：数据文件夹 {classifier.dataPath} 不存在")
        return False
    
    # 显示分类前的文件列表
    print("分类前的文件列表:")
    originalFiles = []  # 原始文件列表
    for fileName in os.listdir(classifier.dataPath):
        filePath = os.path.join(classifier.dataPath, fileName)
        if os.path.isfile(filePath):
            originalFiles.append(fileName)
            print(f"  - {fileName}")
    
    if not originalFiles:
        print("  没有找到文件")
        return False
    
    print(f"\n共找到 {len(originalFiles)} 个文件\n")
    
    # 执行分类
    try:
        classifier.classifyFiles()
        classifier.printClassificationSummary()
        
        print("\n✅ 文件分类测试成功完成！")
        return True
        
    except Exception as e:
        print(f"\n❌ 文件分类测试失败: {str(e)}")
        return False

def main():
    """
    主函数
    """
    success = testFileClassifier()  # 测试结果
    
    if success:
        print("\n🎉 所有测试通过！")
    else:
        print("\n⚠️  测试失败，请检查配置和文件")

if __name__ == "__main__":
    main() 